WA_IDCMP,IDCMP_CLOSEWINDOW OR IDCMP_VANILLAKEY OR IDCMP_RAWKEY OR IDCMP_MENUPICK,
WA_ACTIVATE,TRUE,WA_NEWLOOKMENUS,TRUE,
TAG_DONE])
SetMenuStrip(wnd,menus)
ELSE
WindowToFront(wnd)
ActivateWindow(wnd)
ENDIF
ScreenToFront(wnd.wscreen)
formattitle(tformat,title)
SetWindowTitles(wnd,title,-1)
ENDPROC
-> disappear() - hide interface
PROC disappear()
IF wnd
topedge:=wnd.topedge
leftedge:=wnd.leftedge
ClearMenuStrip(wnd)
CloseWindow(wnd)
wnd:=NIL
ENDIF
ENDPROC
-> cxFunction() - function for CxCustom object
PROC cxFunction(cxm, co)
DEF ie:PTR TO inputevent
ie:=CxMsgData(cxm)
IF ie.class=IECLASS_RAWMOUSE
IF ie.code=IECODE_LBUTTON
left++
IF wnd THEN DivertCxMsg(cxm, co, co)
ELSEIF ie.code=IECODE_RBUTTON
right++
IF wnd THEN DivertCxMsg(cxm, co, co)
ELSEIF ie.code=IECODE_NOBUTTON
move++
-> IF (move AND $FF=0) AND wnd THEN DivertCxMsg(cxm, co, co)
ENDIF
ELSEIF ie.class=IECLASS_RAWKEY
IF ie.code<=95
key++
IF wnd THEN DivertCxMsg(cxm, co, co)
ENDIF
ENDIF
ENDPROC
-> vers() - version string
PROC vers() IS '$VER: Activity 2.1 (07-Mar-1996)'
-> about() - show about requester
PROC about()
EasyRequestArgs(wnd,
[20,0,'About Activity',
'Activity by Jilles Tjoelker\n\nE-mail: M.Tjoelker@mpn.cp.philips.com\n\nSnailmail:\nJ. Tjoelker\nCraterlaan 6\n5632 AG Eindhoven\nTHE NETHERLANDS\n\nHotkey: \s\n\s',
'OK']:easystruct,
0,[hotkey,vers()])
ENDPROC
-> help() - display help requester
PROC help()
EasyRequestArgs(wnd,
[20,0,'Activity help',
'Function: Monitors user activity.\n\nL: Left mouse button \nR: Right mouse button\nK: Keyboard \n\nKeys:\nESC, Q, H - Hide window\nX - Exit activity\nR - Reset counters\nA - About this program\nS - Save counters & window position\nHELP - This requester\n\n\s - Popup\n\s - Save & quit',
'OK']:easystruct,
0,[hotkey,quitkey])
ENDPROC
-> run_astats() - start AStats program
PROC run_astats()
DEF in,cmd[256]:STRING,cd
IF file
cd:=CurrentDir(GetProgramDir())
StringF(cmd,'AStats \s',file)
IF in:=Open('CON:////AStats Output/AUTO/WAIT',MODE_OLDFILE)
IF SystemTagList(cmd,[SYS_ASYNCH,TRUE,SYS_INPUT,in,SYS_OUTPUT,0,0])=-1
Close(in)
ENDIF
ENDIF
CurrentDir(cd)
ELSE
DisplayBeep(NIL)
ENDIF
ENDPROC
-> argBool() - this argXxx() function is missing
PROC argBool(ttypes,name,val)
DEF s:PTR TO CHAR
s:=argString(ttypes,name,NIL)
IF s
val:=TRUE
IF (s[0]="n") OR (s[0]="N")
val:=FALSE
ENDIF
ENDIF
ENDPROC val
-> formattitle() - create the title string
PROC formattitle(fmt:PTR TO CHAR,dest:PTR TO CHAR)